package top.codedance.iotp.manage.client.configration;

import top.codedance.iotp.manage.client.annotation.ConsoleCommandParameter;

public interface Command {
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.CONSOLE, description = "\t\tExit the terminal and save the command history.")
    String QUIT = "quit"; //退出终端
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.CONSOLE, description = "\t\tDisplay console help infomation.")
    String HELP = "help"; //帮助
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.CONSOLE, description = "\t\tView console history input commands.\n\t\t\tUse ! and number call command in history.\n\t\tExample : !1")
    String HISTORY = "history"; //命令历史
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.CONSOLE, description = "\t\tClear history, and clear history data in file.")
    String CLS = "cls"; //清楚命令历史
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.CLIENT, description = "\t\tShutdown clients.\n\t\t\tOption: -ex | --exceptionExit : is exception exit.\t\t-a | --amount : how many second to exit.\n\t\tExample : cshutdown [-ex] [-a 1] d1 ...")
    String SHUTDOWN_CLIENT = "cshutdown"; //关闭client
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.CLIENT, description = "\t\tKill clients in server.\n\t\tExample : ckill d1 ...")
    String KILL_CLIENT = "ckill"; //杀死客户
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tShutdown server.")
    String SHUTDOWN = "shutdown"; //关闭server
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tView client to blacklist.")
    String VIEW_BLACK_LIST = "vbl"; //查看客户端到黑名单
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tAdd client to blacklist.\n\t\tExample : acb d1 ...")
    String ADD_CLIENT_TO_BLACK = "acb"; //添加客户端到黑名单
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tDelete client to blacklist.\n\t\tExample : dcb d1 ...")
    String DEL_CLIENT_TO_BLACK = "dcb"; //删除客户端到黑名单
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tRefresh user cache.")
    String REFRESH_USERS_CACHE = "ruc"; //刷新用户缓存
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tView cached users.")
    String VIEW_USERS_CACHE = "vuc"; //查看缓存用户
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tRefresh device cache.")
    String REFRESH_DEVICIES_CACHE = "rdc"; //刷新设备缓存
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tView cache device.")
    String VIEW_DEVICIES_CACHE = "vdc"; //查看缓存设备
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tView online devices.\n\t\t\tOption: -dt | --displayType : Display devices type. \ttype: all | client | client_manage | console\n\t\tExample : vod [-dt all | client | client_manage | console]")
    String VIEW_ONLINE_DEVICIES = "vod"; //查看在线的设备
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tView server information.")
    String VIEW_INFOMATION = "vsi"; //查看服务器信息
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tGet the number of TCP connections.")
    String GET_TCP_COUNT = "gtc"; //获取tcp连接数
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tGet the number of HTTP connections.")
    String GET_HTTP_COUNT = "ghc"; //获取http连接数
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tGet the number of websocket connections.")
    String GET_WS_COUNT = "gwc"; //获取websocket连接数
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tIs turn on safe mode.")
    String IS_SAFY_MODE = "isafy"; //是否开启安全模式
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tTurn on safe mode.")
    String ENABLE_SAFY_MODE = "esafy"; //开启安全模式
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tTurn off safe mode.")
    String DISABLE_SAFY_MODE = "dsafy"; //关闭安全模式
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tRegister service node to registry.")
    String REGISTY_SERVER = "reg"; //注册服务节点到注册中心
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tUpdate client version number.\n\t\tExample : ucv 3")
    String UPDATE_CLIENT_VERSION = "ucv"; //更新当前客户端版本号
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tUpdate client upgrade repository url.\n\t\tExample : scur https://iot.bamtechnology.cn/repository")
    String SET_CLIENT_UPGRADE_REPOSITORY = "scur"; //设置更新客户端库地址
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tView client upgrade repository url.\n\t\tExample : vcur")
    String VIEW_CLIENT_UPGRADE_REPOSITORY = "vcur"; //查看更新客户端库地址
    @ConsoleCommandParameter(policy = ConsoleCommandParameter.RunPolicy.SERVER, description = "\t\tView server version.\n\t\tExample : vsv")
    String VIEW_SERVER_VERSION = "vsv"; //查看服务端版本
}
